/* Copyright (c) 2000-2006 hamcrest.org */ package org.hamcrest.text; import static org.hamcrest.core.StringContains.containsString; import org.hamcrest.AbstractMatcherTest; import org.hamcrest.Matcher; public class StringContainsTest extends AbstractMatcherTest { static final String EXCERPT = "EXCERPT"; Matcher<String> stringContains = containsString(EXCERPT); @Override protected Matcher<?> createMatcher() { return stringContains; } public void testEvaluatesToTrueIfArgumentContainsSpecifiedSubstring() { assertTrue("should be true if excerpt at beginning", stringContains.matches(EXCERPT + "END")); assertTrue("should be true if excerpt at end", stringContains.matches("START" + EXCERPT)); assertTrue("should be true if excerpt in middle", stringContains.matches("START" + EXCERPT + "END")); assertTrue("should be true if excerpt is repeated", stringContains.matches(EXCERPT + EXCERPT)); assertFalse("should not be true if excerpt is not in string", stringContains.matches("Something else")); assertFalse("should not be true if part of excerpt is in string", stringContains.matches(EXCERPT.substring(1))); } public void testEvaluatesToTrueIfArgumentIsEqualToSubstring() { assertTrue("should be true if excerpt is entire string", stringContains.matches(EXCERPT)); } public void testHasAReadableDescription() { assertDescription("a string containing \"EXCERPT\"", stringContains); } }